#ifndef __APP_API_H__
#define __APP_API_H__

#include <stdio.h>
#include <string.h>
#include <pthread.h>
#include "lwip/arch.h"
#include <lwip/inet.h>
#include <lwip/udp.h>
#include <lwip/tcp.h>
#include <lwip/netif.h>
#include <lwip/init.h>
#include <lwip/sys.h>
#include <lwip/igmp.h>
#include <netif/etharp.h>
#include <lwip/dhcp.h>
#include <lwip/ip_addr.h>
#include <lwip/igmp.h>

err_t tcp_client(const ip_addr_t *ip_addr, u16_t port);

err_t linux_netif_init(struct netif **netif);
void linux_netif_deinit(void);
err_t create_packet_capture_thread(pthread_t *thread);

err_t tcp_echo_server_init(void);
err_t udp_echo_server_init(void);

#endif /* __APP_API_H__ */
